Method and apparatus for modeling of gnss pseudorange measurements for interpolation, extrapolation, reduction of measurement errors, and data compression

ABSTRACT

Polynomial regression models are used to reduce errors in measurements of pseudorange between a GNSS satellite and a receiving station; for data compression by replacing a large number of measurements with a small number of coefficients of the model polynomial, optionally combined with modeling residuals; for extrapolating usefully accurate estimates of future range between the GNSS satellite and the receiving station; and for providing usefully accurate estimates of future coefficient values of the polynomial regression models themselves.

I. FIELD OF THE INVENTION

The present application relates generally to reduction of DifferentialGNSS message payload by mathematical modeling of pseudorange measurementhistories observed at GNSS Reference Stations.

II. BACKGROUND OF THE INVENTION

Global Navigation Satellite Systems (GNSS) have grown beyond GPS andGLONASS with the deployment of new designs including the Japanese QZSS,European Galileo, and Chinese COMPASS systems, all of which follow thesame fundamental methods of operation and position determination basedon RF radio wave ranging techniques. The use and availability of variouscorrections to aid in the accuracy obtained from a satellite in a GNSShave grown as well.

To improve the accuracy obtainable for positioning and navigation datausing a GNSS receiver, various techniques are employed. Some of theseinvolve algorithmic improvements internal to the devices, others involveaiding the device with externally provided information. At a broad levelthese latter items fall onto three areas: corrected or improved orbitalinformation, clock drift information, and localized propagation effectsfrom the ionosphere and troposphere.

To overcome the localized propagation effects specifically, manykinematic or stationary positioning applications make use of one or moreadditional GNSS receivers. In this method, a reference receiver placedat a well-known location, referred to as the reference station, receivesthe same satellite signals as a remote receiver referred to as therover. The measurement information obtained by the reference station isthen sent to the rover, and used, along with knowledge of the actualposition of the reference station, to compute the measurement errorscommon to both the reference station and the rover. This processtypically occurs in real time or near real time, but can also occur inpost-processing, where the data may be stored and dealt with whenconvenient. And multiple rovers may connect to any given referencestation via a variety of communications devices (both one way and twoway).

By taking the difference between signals received both at the referencestation and at the remote rover, common-mode errors are effectivelyeliminated. This facilitates an accurate determination of the rover'scoordinates relative to the reference station's coordinates. When thereference station's coordinates are kinematic (such as the case ofnearby operating rovers/vehicles exchanging data), this furtherfacilitates an accurate determination of position of each vehiclerelative to the other.

This general technique of differencing signals is known in the art asdifferential GPS (DGPS) or differential GNSS (DGNSS). When DGPS/DGNSSpositioning utilizing one or more carrier phases is done in real timewhile the rover is semi-static or in motion, it is most often referredto as Real-Time Kinematic (RTK) positioning.

A common feature of all these techniques involves sending eithercorrection or raw measurement data from the reference station to a GNSSrover receiver in the field. A constant stream of this information isthen used by the rover to perform pseudo-range adjustments, doubledifferencing, and/or various other techniques known to those skilled inthe art to refine the positioning and navigation data calculated by therover receiver. Loss of, or interruption of, this data stream can inturn be very disruptive to the rover unit. This commonly occurs whenvarious wireless transmissions systems are used. Such systems sufferfrom the same RF propagation issues as the GNSS signals and may beblocked or suffer from corrupting effects of multipath on the receivedsignal.

The rate of sending such corrections varies with the rover populationand the capacity of the delivery media. A variety of delivery media havebeen successfully used over the years, including dedicated radio links,commercial broadcasting, government operated broadcasting, cellulartechnologies, paging, Wifi, DSRC, and geostationary and LEO satellitelinks. A common update rate is at 1 Hz, although faster rates are usedwhen there is need. Lower update rates of 5 to 15 seconds are alsofound, typically due to limits of the transmission technology. In theUSCG NDGPS system, data rates of 50, 100, or 200 bits per second limitboth the signal content and the message repetition rates (5 to 10seconds between updates). In many commercial systems a combination ofcompression and adaptive scheduling is used to conserve bandwidth. Withthe advance of widespread TCP/IP connections over wireless and thegrowth in NTRIP sites, access to many reference stations can be obtainedover the Internet at locations well beyond their effective serviceareas.

There may be a dozen or more GNSS satellites simultaneously in viewabove the horizon at a given location and time. The general requirementis to provide differential corrections for all signals of each trackedsatellite (both code and carrier for L1, L2, L5, and beyond in newer GNSsystems). In some applications this may be relaxed if the body of roverdevices to be supported does not, or will not, track a given signal ofinterest. Because the reference station cannot generally know whichsatellites are in view of each individual rover at any instant in time,it is customary to send information covering the entire sky down to arelatively low elevation mask. As the number of active GNSS satellitesdeployed continues to grow with the continued deployment of new systemslike the European Galileo and the Chinese COMPASS, the bandwidthrequired to exchange all data necessary for differential correctionswill continue to increase as well. Data rates of 15 kbs or more arerequired today to convey this information for GPS and GLONASSsatellites, and even this can be prohibitive and problematic for variousreasons.

The problem addressed herein is to generate and transmit the essentialerror correction information to the rover devices without usingexcessive bandwidth or being subject to immediate degrading when lossand corruption of one or more messages in a sequence occurs. There isalso a general need for a method that can accommodate variations inupdate rates and which can allow the rover itself to select the exactpoint in time for which suitable data is needed.

SUMMARY OF THE INVENTION

Accordingly, an apparatus includes a processor and a computer readablestorage medium accessible to the processor and bearing instructionswhich when executed by the processor cause the processor to undertakelogic that includes establishing an observation set of plural pastpseudoranges and respective past times between first and second objectsto establish past range/time pairs. The processor also establishes alookahead set of plural predicted future range estimates between thefirst and second objects and respective future times, and using a curvefitting routine, the past range/time pairs and future range/time pairsare described at least in part by a mathematical model whosecoefficients are produced by the curve fitting routine. The coefficientsare output to a third object, which receives the same satellite positionsignals at its location as are received by the second object at itslocation, to enable the third object to correct errors in pseudorangemeasurements that are common to both the second object and the thirdobject.

“Pseudorange” may refer to both “code” and “carrier” (or “phase”)pseudoranges. Code pseudoranges are derived from explicittime-of-transmit embedded (coded) in the messages sent by the GNSStransmitter to the receiver, from which, using a known value ofspeed-of-light, propagation distance may be determined. Carrierpseudoranges, on the other hand, are derived the phase shift observed inthe broadcast carrier wave as it propagates between the GNSS transmitterand the receiver, from which, using known values of carrier frequency orwavelength and speed-of-light, the propagation time or distance may bederived.

In some examples, a latest time in the set of past pseudoranges is priorto an earliest time in the set of predicted future ranges such that theset of past pseudoranges is temporally separated from the set ofpredicted future ranges by a separation period. In example embodiments,ranges in the past range/time pairs described by the model are measuredranges, and the instructions when executed by the processor cause theprocessor to output, with the coefficients, a set of residual valueseach representing a respective difference between a measured range at anassociated time and an evaluated range at the associated time of themeasured range, the evaluated range being a range output by evaluationof the model represented by the coefficients. The curve fitting routinemay implement a polynomial regression model that does not require amodel response to pass through measurement range/time pairs. In anexample implementation, the second object is fixed at a referencelocation, the first object is an orbiting satellite transmitting thesatellite position signals, and the third object is mobile.

In another aspect, an apparatus includes a processor and a computerreadable storage medium accessible to the processor and bearinginstructions which when executed by the processor cause the processorto, using a history of plural past distances between two objects and apredictable history of plural future distances between the objects,generate a model of the past distances and future distances. Theprocessor outputs the coefficients, but not the distances from whichthey were derived, to a receiver, wherein the distances can bereconstructed from the coefficients.

In another aspect, a method includes establishing a set of measured pastrelationships between first and second objects and establishing a set ofestimated future relationships between the first and second objects. Themethod includes, using the past and future relationships, deriving anumerical model describing the past and future relationships and sendingan output of the numerical model to a third object for applicationthereby to correct a value in the third object.

In another aspect, a method is disclosed by which a mathematical modelis derived from a time history of past and present values of a distancebetween two objects combined with a time history of estimates of futurevalues of the distance between said two objects. The method includesrecording a plurality of measurements of distances between the twoobjects and times at which the distances occur and storing themeasurements and measurement times in a memory device. The method alsoincludes creating a plurality of estimates of future distances betweenthe two objects and times at which the estimates are expected to occur,and storing the estimates and times in a memory device. A mathematicalmodel is fit to the plurality of measurements of distances and theplurality of estimates of future distances, together treated as a singlecomposite time history of distance between the two objects withoutregard for whether individual distances are measured or estimated.

In example embodiments of this last aspect, a first one of the twoobjects is designated as a transmitting device, and a second one of thetwo objects is designated as a receiving device. The measurements ofdistances between the transmitting device and the receiving device, andthe times at which the measurements occur, are derived from one or moresignals transmitted from the transmitting device to the receivingdevice. The transmitting device may also function as a receiving device,and the receiving device may also function as a transmitting device suchthat at least two signals are mutually exchanged, at least one from eachof the transmitting device and the receiving device to the other.

In examples of this latter aspect the transmitting device is a GlobalNavigation Satellite and the receiving device is a Global NavigationSatellite System receiver, and the signals are Global NavigationSatellite System modulated radio frequency signals. If desired, thereceiving device can be at a fixed and precisely-known location on ornear the surface of the earth, or the receiving device can be stationaryat an unknown location, or the receiving device can be mobile. Thetransmitting device may be a Global Navigation Satellite, the receivingdevice may be a Global Navigation Satellite System receiver, the signalsmay be Global Navigation Satellite System modulated radio frequencysignals, and the estimates of future distances between the two objectsand times at which they are expected to occur are derived from one ormore of the following. They may be derived from ephemeris dataassociated with the Global Navigation Satellite, regularly broadcast byeach Global Navigation Satellite, or precise orbital parametersassociated with the Global Navigation Satellite, obtained from alternatesources.

In further non-limiting examples of this latter aspect, either or bothof the transmitting device and the receiving device can be an orbitingsatellite. The estimates of future distances between the transmittingdevice and the receiving device, and times at which they are expected tooccur, can be derived from the known nominal orbital parameters of saidsatellite(s). Or, the estimates of future distances between thetransmitting device and the receiving device, and times at which theyare expected to occur, can be derived from similar orbital tracks foundin historical data and used in pattern-matching. Yet again, theestimates of future distances between the transmitting device and thereceiving device, and times at which they are expected to occur, can bederived by repeating past data, suitably aligned with the known orbitalperiod(s).

Furthermore, the estimates of future distances between the two objectsand times at which they are expected to occur may be derived fromknowledge of the kinematics of one or both of the objects, or knowledgeof periodicities in the motion of one or both of the objects, orknowledge of symmetries in the motion of one or both of the objects, orknowledge of trends in the motion of one or both of the objects, orknowledge of constraints upon the motion or position of one or both ofthe objects, or in which the estimates of future distances between thetwo objects are assigned constant values at any times because bothobjects are known to be at fixed locations.

In some implementations, a subset of contiguous distance and timemeasurements, designated a “window” of measurements and measurementtimes, is utilized. And/or, a subset of contiguous distance and timeestimates, designated a “window” of estimates and expected times, can beutilized. The windows can “slide” over the measurements and/orestimates, one at a time, such that as time advances and newermeasurements or estimates are incorporated, nominally the same number ofmeasurements and/or estimates are spanned by the windows. Or, thewindows can “hop” over the measurements and/or estimates, several at atime, such that as time advances and newer measurements or estimates areincorporated, nominally the same number of measurements and/or estimatesare spanned by the windows. A temporal gap may exist between a latestmeasured time and an earliest future expected time for the distancesbetween the objects.

In non-limiting examples the model can be configured as a polynomial orratio of polynomials, or a spline, or Fourier coefficients, or sphericalharmonic coefficients, or any other parametric mathematical model. Themodel may be derived by means including, but not limited to, leastsquares fit, or trigonometric methods, or Fourier analysis, or minimaxmethods, or spherical harmonic analysis, or linear predictor. The modelcan be subsequently evaluated in order to estimate distance values attimes at which distance measurements exist, but the distancemeasurements are corrupted by errors, wherein the model is used toreduce the errors, with the reduction of errors being improved by theinclusion of the estimates of future distances in the formulation of themodel. Or, arbitrary times in-between distance measurements can be usedand the model used to interpolate between the measurements, with theinterpolation being improved by the inclusion of the estimates of futuredistances in the formulation of the model. Or when times at whichdistance estimates exist, but accuracy of the distance estimates issuspect, the model can be used to improve accuracy of the estimates. Yetagain, arbitrary times in-between distance estimates can be used tointerpolate between the estimates, or arbitrary times within a gapbetween the distance measurements and the distance estimates can be usedto extrapolate the distance measurements forward in time, with theextrapolation being improved by the inclusion of the estimates of futuredistances in the formulation of the model. The model is well-behaved inone example because it is interpolating between measured data andestimated data instead of only extrapolating measured data.

In another aspect, a method by which data compression may be achievedincludes recording a plurality of measurements of a quantity and timesat which said measurements occur and storing said measurements andmeasurement times in a memory device. The method includes creating aplurality of estimates of future values of the quantity and times atwhich the estimates are expected to occur and storing the estimates andtimes in a memory device. Also, the method can include fitting amathematical model to the measurements and estimates, together treatedas a single composite time history of the quantity without regard forwhether individual quantity values are measured or estimated. Insituations requiring only an approximation of the measured data themethod can include storing, transmitting, or otherwise utilizingcoefficients or parameters of the mathematical model instead of themeasured data such that a representation of the measured data may bederived by means of an evaluation of the mathematical model at theassociated measurement times. The representation is improved by theinclusion of the estimates of future values in the formulation of themodel, or in at least one situation requiring an interpolation or anextrapolation of the measured data, storing, transmitting, or otherwiseutilizing coefficients or parameters of the mathematical model such thata representation of the measured data may be derived by an evaluation ofthe model at arbitrary measurement times, with the representation beingimproved by the inclusion of the estimates of future values in theformulation of the model. Yet again, in a situation requiring an exactrepresentation of the measurements a mathematical model is derivedrelative to any appropriate time in the past or present and used to formresidual values, each of which represents a difference between ameasured value and a result of an evaluation of the model at anassociated measurement time. The coefficients, updated at an appropriaterate, are stored, transmitted, or otherwise used along with eachresidual value at an appropriate rate such that a result of anevaluation of the mathematical model represented by the coefficients orparameters at a measurement time, added to the residual value, forms alossless representation of an associated measurement.

In another aspect, a method is disclosed by which derivatives of a timehistory of a quantity may be estimated and extrapolated. The methodincludes recording a plurality of measurements of a quantity and timesat which the measurements occur and storing the measurements andmeasurement times in a memory device. The method also includes creatinga plurality of estimates of future values of the quantity and times atwhich they are expected to occur and storing the estimates and times ina memory device, and then fitting a model to the measurements andestimates, together treated as a single composite time history of thequantity without regard for whether individual quantity values aremeasured or estimated. The method may further include estimation ofderivatives of the quantity with respect to time by differentiating themodel polynomial with respect to time, up to any desired order of thederivative, and evaluating the differentiated polynomial at any specifictime of interest.

In an exemplary implementation of the latter two aspects above, datacompression can be achieved by using a single model to create dataelements in a single message. By virtue of the abilities of presentprinciples to represent the pseudorange measurements and to computederivatives of the pseudorange time histories, at any desired instant intime, a single message created by present principles can replacemultiple Radio Technical Commission For Maritime Services (RTCM)messages used heretofore. Furthermore, by virtue of present principlesto compress data, this can be accomplished with a message that issmaller than the ensemble of RTCM messages heretofore required to conveysimilar information. Thus, instead of periodically broadcasting multiplesets of RTCM messages, only the model coefficients (and, optionally, theresidual differences between the measured and modeled range values) needbe broadcast, from which the receiver may reconstruct the informationcontained in the specific message types that it requires.

In another aspect, a method is disclosed by which a data model may beconstructed such that said model can predict future configurations ofitself. The method includes recording a plurality of measurements of aquantity and times at which the measurements occur and storing themeasurements and measurement times in a memory device. The method alsoincludes creating a plurality of estimates of future values of thequantity and times at which the estimates are expected to occur andstoring the estimates and times in a memory device, and fitting a modelto the measurements and estimates, together treated as a singlecomposite time history of the quantity without regard for whetherindividual quantity values are measured or estimated. The method thenincludes configuring the model as a State Model, in which somecombination of coefficients of the model is a representation of a slopeof another coefficient in the model at a specific time of interest, andthus a set of all coefficients is a representation of a state of themodel. In the preferred aspect, the model is configured as a regressionpolynomial, and each coefficient of the polynomial is representative ofthe slope of another coefficient of the model.

The state of the model at a current time can be used to estimate thestate of the model at a future time by integrating a set of StateEquations. The estimates of future state are improved by the inclusionof the estimates of future values in the formulation of the model. Inthe preferred aspect, integration of State Equations may incorporate anestimate of the slope of the coefficient associated with a highest-orderterm of the model polynomial, at the current time. The estimate of theslope of the highest-order polynomial coefficient may be determined bymeans including, but not limited to, evaluation of past values of thehighest-order polynomial coefficient, by means of trend line analysis,or polynomial modeling, or trigonometric modeling, or the like.

Note that in this last aspect, data compression may be achieved bystoring, transmitting, or otherwise utilizing the estimate of the slopeof the highest-order polynomial coefficient, and incorporating the slopeestimate in subsequent integration of the State Equations to update theentire set of model coefficients, instead of storing, transmitting, orotherwise utilizing the entire set of model coefficients. Thus, insteadof periodically broadcasting the entire set of model coefficients, thedata is compressed even further by broadcasting only the estimated slopeof the highest-order model coefficient, and allow the receiver tointegrate the State Equations itself.

The details of the present invention, both as to its structure andoperation, can best be understood in reference to the accompanyingdrawings, in which like reference numerals refer to like parts, and inwhich:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram showing the relative positions of theTransmitting Device (in orbit) and the Receiving Device (on Earth), andthe signal that passes between them;

FIG. 2 is a schematic diagram showing how both the Transmitting Deviceand the Receiving Device move during the time required for the signal topropagate between them, and the configuration of the resultantpseudorange measurement;

FIG. 3 is a schematic diagram showing how the Observation Window spans asubset of the available pseudorange measurements;

FIG. 4 is a schematic diagram showing the relative positions of theTransmitting Device (in orbit) and the Receiving Device (on Earth) at afuture moment in time, and the configuration of the resultant LookaheadRange Estimate;

FIG. 5 is a schematic diagram showing how the Lookahead Window spans asubset of the available Lookahead Range Estimates;

FIGS. 6 and 7 are schematic diagrams showing the relative temporalpositions of the Observation Window, Lookahead Gap, Lookahead Window,and Range vs Time Pairs;

FIG. 8 is a graph showing an exemplary time history of a highest-orderpolynomial coefficient, and some local regression-line fits to that timehistory;

FIG. 9 is a block diagram of an example system according to presentprinciples; and

FIGS. 10-12 are flow charts of example logic according to presentprinciples.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

In brief overview, device built in accordance with present principles iscapable of determining or receiving a plurality of measured pseudorangevalues between an orbiting GNSS satellite and a receiving device at afixed location on Earth, and associated time values, and of storing thepseudorange and associated time values in a suitable memory device. Thepreferred embodiment device is further capable of determining orreceiving a plurality of estimated range values between theaforementioned GNSS satellite and receiving device at future timevalues, using ephemeris data broadcast by said GNSS satellite or similarorbital parameters obtained from other sources, and mathematicallyprojected into the future, and of storing the estimated range andassociated time values in a suitable memory device. The preferredembodiment device is further capable of computing polynomial regressionmodels describing time histories of ranges between the aforementionedGNSS satellite and receiving device, using combinations of theaforementioned stored measured pseudorange data and stored estimatedfuture range data. The polynomial models advantageously smooth data,leading to a reduction of measurement errors, and interpolate in-betweenmeasurement points. Furthermore, by including estimated future rangedata into the computations used to create models, the models can alsoextrapolate into the future with far greater accuracy and numericalstability than has heretofore been achieved.

The preferred embodiment device can also effect data compression byreplacing the time histories of range with the coefficients of thepolynomial regression models derived from them, optionally accompaniedby the modeling residuals, which are sent to a roving device instead ofthe underlying raw data. Using the polynomial regression models andresiduals a representation of the time histories of range can beconstructed as needed. Future values of the coefficients of thepolynomial regression models can be computed by means of simpleassumptions applied to the mathematical integration of the currentcoefficients of the polynomial regression models. Thus, the preferredembodiment device, by means of polynomial regression models, is capableof reducing errors in measurements of pseudorange between a GNSSsatellite and receiving station for observations in the past andpresent, is capable of effective data compression by replacing a largenumber of pseudorange measurements with a small number of coefficientsof a polynomial, optionally combined with modeling residuals, is capableof providing usefully accurate estimates of future ranges between theGNSS satellite and receiving station, and is capable of providingusefully accurate estimates of future coefficient values in thepolynomial regression models.

Referring initially to FIG. 1, a position signal 1 is transmitted by aTransmitting Device 2 such as a navigational satellite and received by aReceiving Device 3. As indicated in FIG. 2, both the Transmitting Device2 and Receiving Device 3 move during the time required for the Signal 1to propagate between them, and this movement must be mathematicallycompensated based upon knowledge of the motions of Transmitting Device2, Receiving Device 3, and the propagation velocity of Signal 1. TheSignal 1 may thus be any signal from which the distance betweenTransmitting Device 2 and Receiving Device 3 may be ascertained becausethe propagation velocity is known or measured, precise Time-of-Receipt 4is measured by Receiving Device 3, and (a) precise Time-of-Transmit 5 isembedded in Signal 1; or (b) precise Time-of-Transmit 5 is known becauseit follows a schedule; or (c) precise Time-of-Transmit 5 is conveyed toReceiving Device 3 by means of some ancillary signal or by other means,or because the propagation velocity and carrier frequency are known ormeasured, and carrier phase shift between the Transmitting Device 2 andthe Receiving Device 3 is measured or otherwise determined.

In one preferred embodiment, Signal 1 is a Global Navigation SatelliteSystem (GNSS) modulated radio frequency (RF) signal, as broadcast fromGPS, GLONASS, GALILEO, QZSS satellites, or the like; Transmitting Device2 is a GNSS satellite; and Receiving Device 3 is a GNSS receiver in aGNSS reference station, at a fixed and precisely-measured location onthe surface of the earth. However, persons skilled in the art willrecognize that nothing limits the implementation to the preferredembodiment. The Signal 1 may be any signal with predictable ormeasurable propagation characteristics, including but not limited toelectromagnetic (EM) signals such as radio, television, RADAR, andLIDAR, and acoustic signals such as SONAR; the Transmitting Device 2 canbe any device capable of transmitting Signal 1, and might be mobile asin the preferred embodiment, or fixed; the Receiving Device 3 can be anydevice capable of receiving Signal 1, and might be fixed as in thepreferred embodiment, or mobile. Furthermore, both of the Devices 2 and3 can serve dual functions as transmitters and receivers, resulting intwo independent Signals 1 that are mutually exchanged, as in, forexample, the satellites used in the Gravity Recovery And ClimateExperiment (GRACE) project, or in vehicles such as automobiles, trucks,motorcycles, ships, or aircraft, as part of a vehicle-to-vehicle (V2V)collision-avoidance system or similar application.

The Pseudorange 6 is computed in Receiving Device 3, or in ancillarycomputational equipment such as a general purpose computer or othersuitable device as described further below in reference to FIG. 9, usingthe Signal 1 and the associated Time-of-Transmit 5 and Time-of-Receipt 4of the signal, and other information such as knowledge of the rate ofrotation of Earth, by means known in the art. The Pseudorange 6 isalmost always corrupted by various errors, some random and somedeterministic. In the GNSS preferred embodiment, for example, eachcalculated value of Pseudorange 6 may be corrupted by measurement errorsdue to imprecise knowledge of time (on the transmit and receive endsboth), perturbations in the speed-of-light through the ionosphere,troposphere, or other layers of the atmosphere, multipath, and others.

As shown in FIG. 3, a plurality of such measurements of Pseudorange 6values and the associated times at which they occurred, designatedMeasurement Times 7 and derived by appropriate means fromTime-of-Receipt 4 and Time-of-Transmit 5, can be recorded over a span oftime designated Observation Window 8, as indicated in FIG. 3, and storedin a suitable memory device such as computer memory, hard drive, orsimilar. As time passes, the Observation Window 8 “slides” over thePseudorange 6 measurements such that each Observation Window 8 nominallyspans the same number of measurements, and as each new measurement isadded to one end of the Observation Window 8, the corresponding oldestmeasurement is removed from the other end. Thus there is a very largeoverlap between each Observation Window 8 and many of its predecessors.The duration of Observation Window 8, the number of measurementscontained therein, the time between measurements, the need (or lackthereof) for constant time between measurements, and similar parameters,are set as appropriate for the particular mathematical model in use. Inone preferred embodiment, the Observation Window 8 spans approximately 3to 4 minutes' data, nominal time between measurements ranges from 1 to15 seconds, depending upon availability, time between measurements mayvary, and the “newest” measurement contained within the ObservationWindow 8 corresponds to the “current” time. In addition, depending uponspecific goals and needs, the Observation Window 8 may be made to “hop”instead of “slide”, which simply means that the models corresponding tosome temporal positions of the Observation Window 8 may be ignored andare therefore not computed.

According to novel present principles and now referring to FIG. 4, aplurality of estimated future values of the distance between theTransmitting Device 2 and the Receiving Device 3 are used and aredesignated as Lookahead Range Estimates 9, as well as their associatedexpected times-of-occurrence, designated Lookahead Times 10. Theseestimates are computed over a span of time designated as LookaheadWindow 11, shown in FIG. 5. The duration of Lookahead Window 11, thenumber of range estimates contained therein, the temporal spacingbetween the estimates, and similar estimation parameters, are set asappropriate for the particular mathematical model in use. In onepreferred embodiment, Lookahead Window 11 spans approximately 3 to 4minutes' data, with the interval between estimates set to the same valueas the interval between measurements in the associated ObservationWindow 8. As time passes, the Lookahead Window 11 “slides” or “hops”over Lookahead Range Estimates 9 in a manner similar, though notnecessarily identical, to the manner in which Observation Window 8“slides” or “hops” over the Pseudoranges 6.

A new model may be computed at each new position of Observation Window8/Lookahead Window 11, as they slide or hop over the data.

In the preferred embodiment, Lookahead Range Estimates 9 are derived,using conventional computational equipment such as general purposecomputers or other suitable devices, from ephemeris data obtained fromthe signals regularly broadcast by each GNSS satellite or from orbitalparameters available from other sources. The ephemerides or orbitalparameters contain sufficient information to predict a satellite'sestimated position in an Earth-referenced coordinate system many hoursinto the future, and satellite position estimates obtained in thismanner, combined with the Receiving Device 3's knowledge of its ownposition on Earth, and knowledge of Earth's rotation rate, aresufficient to compute any desired number of Lookahead Range Estimates 9at any desired Lookahead Times 10 up to several hours in the future.

Persons skilled in the art will recognize that many other methods bywhich Lookahead Range Estimates 9 can be determined exist, including butnot limited to, in the case where one or both of Transmitting Device 2and Receiving Device 3 are orbiting satellites: use of historical datato find similar orbital tracks for use in pattern-matching; repeatingpast data, suitably aligned with the known orbital period(s); or basicnumerical techniques for extrapolation, curve-fitting, or the like;along with the known rotation rate of the Earth, if necessary, tocompute estimates of relative positions and/or distances. In cases notnecessarily involving orbiting satellites, any knowledge of thekinematics of the system and its constituents, or of periodicities,symmetries, or similar trends in the system dynamics, that can be usedto estimate future positions of Transmitting Device 2 and/or ofReceiving Device 3 can be used to estimate the future relative distancesbetween them.

The Observation Window 8 and Lookahead Window 11 are oriented in time asindicated in FIG. 6. As shown, it is not necessary that Lookahead Window11 be temporally adjacent to Observation Window 8; in fact significantbenefit can be derived from the presence of a temporal gap between them,designated Lookahead Gap 12 in FIG. 6. In one preferred embodiment,Lookahead Gap 12 is set to approximately 30 minutes.

The measured Pseudorange 6 values and their associated Measurement Times7 (spanned by Observation Window 8), together with the estimatedLookahead Range Estimates 9 and their associated Lookahead Times 10(spanned by Lookahead Window 11), form a set of “range vs time” valuepairs, designated Range vs Time Pairs 13 in FIG. 7, from which anumerical model is derived. The fact that some of the range values aremeasured and others are estimated does not affect the model. Examplemodels that may be used include polynomial and trigonometric models, aspline fit, a Fourier series fit, and a minimax fit. Persons skilled inthe art will recognize that many other types of models can be formulatedfrom these same data, including but not limited to models based uponspherical harmonics, linear predictors, and the like.

One preferred embodiment uses polynomial regression models formulated asfollows:

-   -   Each individual Range vs Time 13 pair element is assumed to be        described by a polynomial of the form in equation 1:

$\begin{matrix}{{{Range}(t)} = {{C_{n}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)}^{n} + {C_{n - 1}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)}^{n - 1} + \ldots + {C_{2}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)}^{2} + {C_{1}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)} + C_{0}}} & \left( {{eq}.\mspace{14mu} 1} \right)\end{matrix}$

-   -   where        -   Range(t) is the measured or estimated Range (Pseudorange 6            or Lookahead Range Estimate 9, respectively) uniquely            associated with time t,        -   t is the time (Measurement Time 7 or Lookahead Time 10, as            appropriate) uniquely associated with Range(t);        -   t₀ and t_(n) are optional “scaling” parameters used to            reduce numerical overflow and underflow problems in the            computation of the models, determined empirically, e.g.,            using principles outlined for other purposes in Michaelsen            Online Course Notes for Geography 210B, Environmental Data            Analysis, Winter 2007, Lecture 18: “Polynomial Regression            Models in one Variable”,            http://www/geog/ucsb.edu/˜joel/g210_w07/lecture_notes/lect18/oh07_(—)18_(—)1.html:            “numerical overflow and underflow problems can be reduced by            scaling”, incorporated herein by reference;        -   C_(n) . . . C₀ are the coefficients of the polynomial            regression model;        -   n is the model order, determined empirically;        -   n, n−1, . . . are exponents in the polynomial regression            model.

After each pair element of Range vs Time 13 is entered separately intoequation 1, the result is a set of simultaneous equations, expressed inmatrix form in equation 2:

$\begin{matrix}{\begin{bmatrix}{{Pseudorange}\left( {t - m} \right)} \\{{Pseudorange}\left( {t - m + 1} \right)} \\{{Pseudorange}\left( {t - m + 2} \right)} \\\vdots \\{{Pseudorange}(t)} \\{{LookaheadRange}\mspace{11mu} \left( {t + g} \right)} \\{{LookaheadRange}\mspace{11mu} \left( {t + g + 1} \right)} \\{{LookaheadRange}\mspace{11mu} \left( {t + g + 2} \right)} \\\vdots \\{{LookaheadRange}\mspace{11mu} \left( {t + g + m} \right)}\end{bmatrix} = {\quad{\begin{bmatrix}\left( \frac{t - t_{0} - m}{t_{n}} \right)^{n} & \left( \frac{t - t_{0} - m}{t_{n}} \right)^{n - 1} & \ldots & \left( \frac{t - t_{0} - m}{t_{n}} \right)^{2} & \left( \frac{t - t_{0} - m}{t_{n}} \right) & 1 \\\left( \frac{t - t_{0} - m + 1}{t_{n}} \right)^{n} & \left( \frac{t - t_{0} - m + 1}{t_{n}} \right)^{n - 1} & \ldots & \left( \frac{t - t_{0} - m + 1}{t_{n}} \right)^{2} & \left( \frac{t - t_{0} - m + 1}{t_{n}} \right) & 1 \\\left( \frac{t - t_{0} - m + 2}{t_{n}} \right)^{n} & \left( \frac{t - t_{0} - m + 2}{t_{n}} \right)^{n - 1} & \ldots & \left( \frac{t - t_{0} - m + 2}{t_{n}} \right)^{2} & \left( \frac{t - t_{0} - m + 2}{t_{n}} \right) & 1 \\\vdots & \vdots & \; & \vdots & \vdots & \vdots \\\left( \frac{t - t_{0}}{t_{n}} \right)^{n} & \left( \frac{t - t_{0}}{t_{n}} \right)^{n - 1} & \ldots & \left( \frac{t - t_{0}}{t_{n}} \right)^{2} & \left( \frac{t - t_{0}}{t_{n}} \right) & 1 \\\left( \frac{t - t_{0} + g}{t_{n}} \right)^{n} & \left( \frac{t - t_{0} + g}{t_{n}} \right)^{n - 1} & \ldots & \left( \frac{t - t_{0} + g}{t_{n}} \right)^{2} & \left( \frac{t - t_{0} + g}{t_{n}} \right) & 1 \\\left( \frac{t - t_{0} + g + 1}{t_{n}} \right)^{n} & \left( \frac{t - t_{0} + g + 1}{t_{n}} \right)^{n - 1} & \ldots & \left( \frac{t - t_{0} + g + 1}{t_{n}} \right)^{2} & \left( \frac{t - t_{0} + g + 1}{t_{n}} \right) & 1 \\\left( \frac{t - t_{0} + g + 2}{t_{n}} \right)^{n} & \left( \frac{t - t_{0} + g + 2}{t_{n}} \right)^{n - 1} & {\; \ldots} & \left( \frac{t - t_{0} + g + 2}{t_{n}} \right)^{2} & \left( \frac{t - t_{0} + g + 2}{t_{n}} \right) & 1 \\\vdots & \vdots & \; & \vdots & \vdots & \vdots \\\left( \frac{t - t_{0} + g + m}{t_{n}} \right)^{n} & \left( \frac{t - t_{0} + g + m}{t_{n}} \right)^{n - 1} & \ldots & \left( \frac{t - t_{0} + g + m}{t_{n}} \right)^{2} & \left( \frac{t - t_{0} + g + m}{t_{n}} \right) & 1\end{bmatrix}\begin{bmatrix}C_{n} \\C_{n - 1} \\\vdots \\C_{2} \\C_{1} \\C_{0}\end{bmatrix}}}} & \left( {{eq}.\mspace{14mu} 2} \right)\end{matrix}$

-   -   where        -   Pseudorange (t−m) is the Pseudorange 6 range value            associated with Measurement Time 7 “t−m”;        -   Pseudorange (t−m+1) is the Pseudorange 6 range value            associated with Measurement Time 7 “t−m+1”, and so on;        -   LookaheadRange(t+g) is the Lookahead Range Estimate 9 value            associated with Lookahead Time 10 “t+g”;        -   LookaheadRange(t+g+1) is the Lookahead Range Estimate 9            value associated with Lookahead Time 10 “t+g+1”, and so on;        -   g is the size of Lookahead Gap 12.

Equation 2 can be expressed in matrix shorthand as equation 3:

[R]=[T][C]  (eq.3)

In the preferred embodiment there are many more equations than unknownsand thus matrix [T] represents the overdetermined case and hasfull-rank. Therefore the optimal least-squares solution for thecoefficient vector [C] may be determined (using, e.g., principlesoutlines in Planetmath.org, online reference for Pseudoinverse,http://planetmath.org/encyclopedia/MoorePenrosePseudoinverse2.html,incorporated herein by reference as equation 4:

[T] ⁺ [R]=[C]  (eq.4)

-   -   where [T]⁺ is the pseudoinverse of [T] and [C] is the set of        polynomial coefficients that form a least-squares fit of the        model to the data.

Persons skilled in the art will recognize that there are manymathematical methods available to compute the pseudoinverse of a matrix.

In one preferred embodiment a new polynomial model is derived after eachadvancement of the Observation Window 8 (and, in lockstep, theadvancement of the Lookahead Window 11), which typically corresponds tothe receipt of a new value of the Pseudorange 6 and its associatedMeasurement Time 7 value. Having derived the model, determination of amodeled value for its range variable is accomplished by evaluating themodel polynomial according to polynomial evaluation principles known inthe art, with its time variable set to a desired value.

Note that present principles can estimate the satellite range in betweenthe times when measurements of those ranges exist. Moreover, contrary toprior teachings that such models diverge quickly and thus fail when usedfor interpolation near the endpoints of the measured data, or forextrapolation into the future, present principles understand that thispredicted shortcoming can be avoided. Specifically, first observe thatRange vs Time 13 consists of a set of measured value pairs spanning timefrom the past through the present (Pseudorange 6 and associatedMeasurement Times 7), a temporal gap in the value pairs (Lookahead Gap12), and a set of estimated value pairs spanning a period of time in thefuture (Lookahead Estimated Ranges 9 and associated Lookahead Times 10).When present principles are used to model the data near the “newest” endof measurements in Observation Window 8, or to extrapolate to times inthe future that fall within Lookahead Gap 12 or Lookahead Window 11(beyond the end of the measured data), the models are well-behavedbecause they are stabilized by the presence of estimated future data, orbecause they are interpolating between measured data and estimated data,respectively. In the GNSS preferred embodiment the need forextrapolation beyond the end of the measured data seldom extends morethan approximately 60 seconds into the future. Because the Lookahead Gap12 in the preferred embodiment is on the order of 30 minutes in length,the net result is excellent extrapolation of the measured data over thedesired extrapolation period owing to the use of reasonably accurate(since derived from predictable parameters) estimates of future data.The degree to which the interpolated range values will agree with actualfuture measured values of Pseudorange 6 is, of course, strongly relatedto the quality of the estimate used to create Lookahead Estimated Ranges9.

In addition, the use of a model that does not force the model responseto pass through the measurement points promotes error reduction bysmoothing measurement errors.

Having derived the polynomial regression model as described above, datacompression is achieved by replacing the raw measurement data with thecoefficients of the model that describes them. For example, in thepreferred embodiment Observation Window 8 might span 4 minutes,Lookahead Gap 12 might span 30 minutes, and Lookahead Window 11 mightspan 4 minutes. If the data that occupy Observation Window 8 are sampledat 1-second intervals, then Observation Window 8 contains 240 rangevalues. The preferred embodiment polynomial order is 5, thus sixpolynomial coefficients replace 240 range values. However, thepolynomial model does not only describe the data within ObservationWindow 8; it can also be used to describe extrapolated data withinLookahead Gap 12 (1800 samples), and, under appropriate circumstances,even within Lookahead Window 11 (240 samples). Thus, in the preferredembodiment six polynomial coefficients can potentially replace 2280range samples.

In cases where a completely lossless representation of the range sampledata is necessary, the model coefficients can be accompanied by a set ofvalues representing the difference between the actual measurement ateach measurement time and the model evaluated at that same time. Suchresidual values are herein referred to as “nonces”. “Nonce” is a termfrom the cryptography field, where it describes a value created for usejust one time. As the nonce values are typically very much smaller inmagnitude than their associated measured range values, and can thereforebe represented with fewer bits, data compression is achieved even in thelossless case. And, optionally, the nonce data can be updated at themeasurement rate while the polynomial coefficients are updated at aslower rate, reducing the computational load and compressing the dataeven further by requiring the exchange of still fewer bits.

In cases where multiple Signals 1 are transmitted from TransmittingDevice 2 to Receiving Device 3, further data compression can be achievedby modeling pseudoranges derived from one of the signals, and thencomputing nonces representing differences between evaluation of themodel associated with that one signal and the raw pseudorangemeasurements associated with each of the other signals. In this case,the model coefficients can be accompanied by multiple noncesrepresenting the non-modeled signals, in addition to each noncerepresenting the modeled signal, resulting in lossless representationsof measurements derived from all of the signals. In one exemplaryembodiment, the separate code and carrier signals from a single GNSSsatellite can be modeled such that one signal is represented as themodel of the other signal plus a set of nonce values.

Another useful characteristic of the preferred embodiment implementationas a polynomial model is the ability to estimate derivatives. In theGNSS field it is often necessary to estimate range-rate, for example inthe computation of Doppler or Sagnac effects, in addition to range.Range-rate represents the rate of change of range with respect to time,and is trivially easy to extract from the preferred embodiment model bycomputing the first derivative of the model polynomial with respect totime by conventional means well-known in the art, and then evaluatingthat first derivative at the specific times of interest. Relativeacceleration and other higher-order derivatives can, of course, becomputed by repeated applications of the same process. In this respectpresent principles continue to compute the derivative(s) not only atpast and present time points within the Observation Window 8, but alsoat future time points within the Lookahead Gap 12 and even withinLookahead Window 11.

Furthermore, it may now be appreciated that the derivatives at timesnear the end of the Observation Window 8 and within the Lookahead Gap 12are well-behaved because of the stabilizing influence of the estimateddata in the Lookahead Window 11.

Another useful characteristic of the preferred embodiment implementationas a polynomial model is that model's ability to predict futureconfigurations of itself. This is a mathematical characteristic exposedby the particular manner in which the preferred embodiment modelpolynomial is formulated, and is explained below.

-   -   Returning to equation 1:

$\begin{matrix}{{{Range}(t)} = {{C_{n}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)}^{n} + {C_{n - 1}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)}^{n - 1} + \ldots + {C_{2}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)}^{2} + {C_{1}\left( \frac{\left( {t - t_{0}} \right)}{t_{n}} \right)} + C_{0}}} & \left( {{repeat}\mspace{14mu} {{eq}.\mspace{14mu} 1}} \right)\end{matrix}$

-   -   If empirical scaling constants t₀ and t_(n) are ignored for the        moment, then equation 1 takes the generic form shown in equation        5:

y(t)=C _(n) t ^(n) +C _(n−1) t ^(n−1) + . . . +C ₂ t ² +C ₁ t+C ₀  (eq.5)

-   -   If a change-of-origin is applied to equation 5, such that the        origin is moved from (0,0) to (−Δt,0), then the resulting        polynomial for the same equation, at the new origin, becomes as        in equation 6:

y(t)=C _(n)(t+Δt)^(t) +C _(n−1)(t+Δt)^(n−1) + . . . +C ₂(t+Δt)² +C₁(t+Δt)+C ₀   (eq.6)

-   -   If a new polynomial, equation 7, is defined as:

y(t)= C _(n) t ^(n) + C _(n−1) t ^(n−1) + . . . + C ₂ t ² + C ₁ t+ C ₀  (eq.7)

-   -   . . . and equation 7 is set equal to equation 6 as indicated in        equation 8:

C _(n) t ^(n) + C _(n−1) t ^(n−1) + . . . + C ₂ t ² + C ₁ t+ C ₀ =C_(n)(t+Δt)^(t) +C _(n−1)(t+Δt)^(n−1) + . . . +C ₂(t+Δt)² +C ₁(t+Δt)+C ₀  (eq.8)

-   -   . . . then expanding the binomial powers and combining like        terms results in equation 9:

C ₀=(terms in higher powers of Δt)+C ₁(Δt)+C ₀

C ₁=(terms in higher powers of Δt)+2C ₂(Δt)+C ₁

C ₂=(terms in higher powers of Δt)+3C ₃(Δt)+C ₂

. . .

C _(n−1)=(terms in higher powers of Δt)+nC _(n)(Δt)+C _(n−1)

C _(n)=C_(n)   (eq.9)

-   -   Solving for the slopes of C₀, C₁, . . . , C_(n−1) with respect        to Δt requires computing the limit of the terms in equation 9 as        Δt approaches zero, in a conventional manner well-known in the        art, resulting in the expressions in equation 10:

$\begin{matrix}{{{{{slope}\left( C_{0} \right)} = {{\lim\limits_{{\Delta \; t}\rightarrow 0}\frac{{\overset{\_}{C}}_{0} - C_{0}}{\Delta \; t}} = {\frac{\left( {{terms}\mspace{14mu} {in}\mspace{14mu} {higher}\mspace{14mu} {powers}\mspace{14mu} {of}\mspace{14mu} \Delta \; t} \right) + {C_{1}\left( {\Delta \; t} \right)} + C_{0} - C_{0}}{\Delta \; t} = C_{1}}}}{{{slope}\left( C_{1} \right)} = {{\lim\limits_{{\Delta \; t}\rightarrow 0}\frac{{\overset{\_}{C}}_{1} - C_{1}}{\Delta \; t}} = {\frac{\left( {{terms}\mspace{14mu} {in}\mspace{14mu} {higher}\mspace{14mu} {powers}\mspace{14mu} {of}\mspace{14mu} \Delta \; t} \right) + {2{C_{2}\left( {\Delta \; t} \right)}} + C_{1} - C_{1}}{\Delta \; t} = {2C_{2}}}}}{{{slope}\left( C_{2} \right)} = {{\lim\limits_{{\Delta \; t}\rightarrow 0}\frac{{\overset{\_}{C}}_{2} - C_{2}}{\Delta \; t}} = {\frac{\left( {{terms}\mspace{14mu} {in}\mspace{14mu} {higher}\mspace{14mu} {powers}\mspace{14mu} {of}\mspace{14mu} \Delta \; t} \right) + {3{C_{3}\left( {\Delta \; t} \right)}} + C_{2} - C_{2}}{\Delta \; t} = {3C_{3}}}}}\mspace{79mu} {\vdots {{slope}\left( C_{n - 1} \right)} = {{\lim\limits_{{\Delta \; t}\rightarrow 0}\frac{{\overset{\_}{C}}_{n - 1} - C_{n - 1}}{\Delta \; t}} = {\frac{\left( {{terms}\mspace{14mu} {in}\mspace{14mu} {higher}\mspace{14mu} {powers}\mspace{14mu} {of}\mspace{14mu} \Delta \; t} \right) + {n\; {C_{n}\left( {\Delta \; t} \right)}} + C_{n - 1} - C_{n - 1}}{\Delta \; t} = {n\; C_{n}}}}}}\mspace{20mu} {{{slope}\left( C_{n} \right)} = {{\lim\limits_{{\Delta \; t}\rightarrow 0}\frac{{\overset{\_}{C}}_{n} - C_{n}}{\Delta \; t}} = {\frac{C_{n} - C_{n}}{\Delta \; t} = 0}}}} & \left( {{eq}.\mspace{14mu} 10} \right)\end{matrix}$

The interpretation of these results is as follows: at any given point intime, C1 is a representation of the slope of C0, C2 is a representationof the slope of C1, C3 is a representation of the slope of C2, and soon. This means that the polynomials used in the preferred embodimentform a State Space description of the system represented by thepreferred embodiment model.

It also means that the state of the model polynomial (the values of thecoefficients in vector [C]) at any point in time can, after applicationof some simple assumptions, predict the future state of the system(future values of the coefficients in vector [C]) by integrating theState Equations shown in equation 11:

$\begin{matrix}{\mspace{11mu} {{{x(t)} = \begin{bmatrix}{C_{0}(t)} \\{C_{1}(t)} \\{C_{2}(t)} \\{C_{3}(t)} \\\vdots \\{C_{n}(t)}\end{bmatrix}}{{\overset{.}{x}(t)} = {\begin{bmatrix}{{\overset{.}{C}}_{0}(t)} \\{{\overset{.}{C}}_{1}(t)} \\{{\overset{.}{C}}_{2}(t)} \\{{\overset{.}{C}}_{3}(t)} \\\vdots \\{{\overset{.}{C}}_{n}(t)}\end{bmatrix} = {\begin{bmatrix}{1 \cdot {C_{1}(t)}} \\{2 \cdot {C_{2}(t)}} \\{3 \cdot {C_{3}(t)}} \\{4 \cdot {C_{4}(t)}} \\\vdots \\{{slope}\left( {C_{n}(t)} \right)}\end{bmatrix} = {\begin{bmatrix}0 & 1 & 0 & 0 & \ldots & 0 \\0 & 0 & 2 & 0 & \ldots & 0 \\0 & 0 & 0 & 3 & \ldots & 0 \\0 & 0 & 0 & 0 & \ldots & 0 \\\vdots & \vdots & \vdots & \vdots & \ddots & \vdots \\0 & 0 & 0 & 0 & \ldots & 0\end{bmatrix}{\quad{{\begin{bmatrix}{C_{0}(t)} \\{C_{1}(t)} \\{C_{2}(t)} \\{C_{3}(t)} \\\vdots \\{C_{n}(t)}\end{bmatrix} + \begin{bmatrix}0 \\0 \\0 \\0 \\\vdots \\{{slope}\left( {C_{n}(t)} \right)}\end{bmatrix}} = {{A \cdot {x(t)}} + {B \cdot {u(t)}}}}}}}}}}} & \left( {{eq}.\mspace{14mu} 11} \right)\end{matrix}$

Formulation and integration of the State Equations, above, may beeffected by known means such as those described by Rowell, MIT CourseNotes for Analysis and Design of Feedback Control Systems. “State-SpaceRepresentation of LTI Systems”,web.mit.edu/2.14/www/Handouts/StateSpace.pdf incorporated herein byreference. Note that using equation (11), the rover can, from receivinga derivative or slope of the highest order coefficient, propagate themodel forward in time. In other words, in some embodiments only theslope (derivative) of the highest order coefficient is sent from thereference station to the rover as a further form of data compression.

The only unknown in the equation 11 is slope(C_(n)(t)) (the slope of thecurve representing coefficient C_(n)), which means that slope(C_(n)(t))is the single driving-point for the entire system. If suitable estimatesfor the values of slope(C_(n)(t)) are applied in equation 11 (instead ofusing “0” as implied by equation 10), then estimates for the futurestate of the entire rest of the system—all of the coefficients—willautomatically follow trajectories that are entirely consistent andappropriate, and the preferred embodiment polynomial will havesuccessfully predicted its own future.

Persons skilled in the art will recognize that many suitable means toestimate slope(C_(n)(t)) in equation 11 exist, including but not limitedto observation of historical values of C_(n)(t) and application ofsimple trend line analysis and subsequent extrapolation; polynomial ortrigonometric modeling of historical values of C_(n)(t) and subsequentextrapolation; and similar methods. FIG. 8 shows an exemplary situation,using actual measured data, in which the value of C₅(t) (C_(n)(t) in a5^(th)-order context) is plotted as a function of time. The regressionline at various time points is superimposed upon the plot of C₅(t). Inthis case each regression line is determined by trend line analysis ofthe current and most recent 1799 data points (one-half hour into thepast). It is readily apparent from the slope of the regression linesthat “zero” is seldom an appropriate value for slope(C_(n)(t)).

Now referring to FIG. 9, an example system 100 that can be used toimplement principles above includes one or more navigation satellites102 located in space above the Earth and one or more reference stations104 that typically are immovably disposed at known, unchanging locationson the Earth. One or more mobile platforms, hereinafter rovers 106, arealso included in the system 100. Both the reference station 104 androver 106 receive position signals from the satellite 102 throughrespective satellite receivers 108, 110 sending signals to respectiveprocessors 112, 114 accessing instructions contained on one morerespective computer readable storage media 116, 118 such as disk-basedor solid state storage to execute logic according to present principles.As set forth above and explained further below, the reference station104 extracts distance measurements from the signal it receives from thesatellite 102 and sends, via a suitable transmitter 120, indications ofthose measurements to a communication interface 122 of the rover 106 sothat the rover processor 114 can quantify errors in the measurements ofdistance between satellite 102 and reference station 104, and applycorrections for those errors its own position as determined from thesignal from the satellite 102. In some embodiments the reference station104 may be embodied as a computer that includes a display 124 controlledby the processor 112 and an input device assembly 126 such as keyboards,mice, etc. for sending user input to the processor 112. Likewise, therover 106 may be embodied as a computer in, e.g., a mobile platform suchas a telephone, a vehicle, etc. that includes a display 128 controlledby the processor 114 and an input device assembly 130 such as keyboards,mice, etc. for sending user input to the processor 114.

FIG. 10 illustrates principles discussed above in flow chart format togive a non-limiting example of computer program instructions that may bestored on a computer readable storage medium for execution by aprocessor, in this case, the processor 112 of the reference station 104.Commencing at block 132, the above-described observation window isestablished of past distances (also referred to as “ranges”) along withthe respective times at which the distances were attained between thereference station 104 and satellite 102. Moving to block 134, futureestimated distances between the reference station 104 and satellite 102with respective times are obtained by one or more of the exemplarymethods described above (e.g., by ephemeris data, orbital data, etc.)and then at block 136 the LookAhead window is established using thefuture estimated distances and times from block 134. Using therange-time pairs from both windows, at block 138 a numerical model isderived for each pair. The model output, in the preferred example in theform of polynomial coefficients in some cases accompanied by nonces, issent to the rover 106 at block 140. Or, after an initial complete set ofcoefficients has been sent to the rover 106, the slope (derivative) ofthe highest order polynomial coefficient may afterward be sent in lieuof the coefficients and then integrated at the rover to propagate thecoefficients, compressing data even further.

Example rover 106 logic is shown in FIG. 11, in which, at block 142, therover 106 receives from the reference station 104 the modelcoefficients, which represent range information to be utilized at block144 to correct pseudorange measurements between satellite 102 and rover106. In the preferred embodiment the rover processor 114 has knowledgeof the general model (e.g., n^(th) order polynomial) used by thereference station and so can simply reverse the process undertaken bythe reference station and evaluate the model represented by thecoefficients received from the reference station to yield arepresentation of the measured distance between the satellite and thereference station. In block 145 the rover computes its position usingthe computed ranges from several satellites.

In greater detail with respect to block 144, by accounting fordifferences between signals received both at the reference station andat the remote rover, common-mode errors are effectively eliminated. Thisfacilitates an accurate determination of the rover's coordinatesrelative to the reference station's coordinates. When the referencestation's coordinates are kinematic (such as the case of nearbyoperating rovers/vehicles exchanging data), this further facilitates anaccurate determination of position of each vehicle relative to theother.

Recall that in a differentially corrected system the precise position ofthe reference station is known and sent to the rover, so the precisesatellite-to-reference-station distance can be computed and determinedby the rover. From the set of measured satellite-to-reference stationpseudoranges (and the location) and the set of measuredsatellite-to-rover pseudoranges, the rover can determine the common modeerrors observed on the measurements that both it and the referencestation observe on each satellite and resolve its own location with muchgreater precision. The details of this process are well known to thoseskilled in the art.

Noteworthy in block 144 is the fact that the model yields arepresentation of the measured distance between the satellite and thereference station, not the error in that distance. If the model yieldeda representation of the error, then the rover would be required to useexactly the same satellite ephemeris data as the reference station, inorder to avoid corruption of the error corrections by potentiallysignificant differences between ephemerides. But since the model yieldsa representation of the measured distance, the rover is free to utilizeany ephemeris data to which it has access. There are conceivableembodiments in which the rover has access to different or better qualityephemerides than does the reference station, and these situations areautomatically accommodated by the present invention.

Thus, transmitting the raw observed pseudorange measurements of eachsatellite from the reference station, as well as the reference stationlocation in a common coordinate system to the rover, is all that isneeded in order to compute the corrections for the rover. Alternatively,the reference station can compute its own position based solely on itsown measurements, compare this result to its a priori known position,and use this to determine the corrections. In still other commonembodiments, the determination of the rover position from this dataoccurs at a third location as suits the application.

The need for constantly transmitting this measurement or correctionsdata heretofore has required significant data transfers and stresses thelimited-bandwidth channels. And the rover is subject to operatingdisruptions whenever such transmissions are disturbed. It is the objectof present principles to overcome these limitations by an effective formof compression by substituting parameters of the present models for theraw measurements which can then be reconstructed at will for themeasurement moment of interest to the rover.

FIG. 12 provides an example flow chart of more detailed logic that maybe used by the reference station 104 to generate model outputs for useas error correction information by the rover 106. Commencing at block146, for each temporal slide or hop of the windows discussed above, thelogic moves to block 148 in which each range/time pair in both windows(past history in the Observation Window and future estimatedranges/times in the LookAhead Window) are described using, as anexample, the polynomial described above. The result, as indicated atblock 150, is a set of simultaneous equations set forth previously. Atechnique such as the use of least squares fitting may be applied atblock 152 to obtain polynomial coefficients that represent the rawrange/time data. At block 154 only the coefficients, but not theunderlying raw range/time data, are sent to the rover 106. If desired atblock 156, along with the coefficients the residual differences betweenthe measured pseudoranges and the ranges obtained by evaluation of themodel may be sent to the rover 106. At the rover, an evaluation of themathematical model represented by the coefficients or parameters at ameasurement time are added to the residual value to form a losslessrepresentation of the associated measurement.

In addition to the above, the following references are incorporatedherein: U.S. Pat. No. 7,579,984; U.S. Pat. No. 8,134,499; “A briefreview of basic GPS orbit interpolation strategies”, Mark Schenewerk,GPS Solution 2003 6: 265-267; and “Using Interpolation and ExtrapolationTechniques to Yield High Data Rates and Ionosphere Delay Estimates fromContinuously Operating GPS Networks”, Gerald L. Mader and Michael L.Morrison, ION GPS 2002, 24-27 Sep. 2002, Portland, Oreg.

While the particular METHOD AND APPARATUS FOR MODELING OF GNSSPSEUDORANGE MEASUREMENTS FOR INTERPOLATION, EXTRAPOLATION, REDUCTION OFMEASUREMENT ERRORS, AND DATA COMPRESSION is herein shown and describedin detail, it is to be understood that the subject matter which isencompassed by the present invention is limited only by the claims.

What is claimed is:
 1. Apparatus comprising: processor; computerreadable storage medium accessible to the processor and bearinginstructions which when executed by the processor cause the processor toundertake logic comprising: establishing an observation set of pluralpast ranges and respective past times between first and second objectsto establish past range/time pairs; establishing a lookahead set ofplural predicted future ranges and respective future times between thefirst and second objects; using a curve fitting routine, describing thepast range/time pairs and future range/time pairs at least in partthrough coefficients or parameters of a mathematical model produced bythe curve fitting routine; and outputting the coefficients or parametersto a third object to enable the third object to correct errors, commonto both the second object and the third object, in range measurements.2. The apparatus of claim 1, wherein a latest time in the set of pastranges is prior to an earliest time in the set of predicted futureranges such that the set of past ranges is temporally separated from setof predicted future ranges by a separation period.
 3. The apparatus ofclaim 1, wherein ranges in the past range/time pairs described by thecoefficients or parameters of the mathematical model are measuredranges, and the instructions when executed by the processor cause theprocessor to undertake logic further comprising: outputting, with thecoefficients, a set of residual values each representing a respectivedifference between a measured range at an associated time and anevaluated range at the associated time of the measured range, theevaluated range being a range output by evaluation of the mathematicalmodel.
 4. The apparatus of claim 1, wherein the curve fitting routineimplements a polynomial regression model that does not require a modelresponse to pass through range/time pairs.
 5. The apparatus of claim 1,wherein the second object is fixed at a reference location, the firstobject is an orbiting satellite transmitting the satellite positionsignals, and the third object is mobile.
 6. Apparatus, comprising:processor; computer readable storage medium accessible to the processorand bearing instructions which when executed by the processor cause theprocessor to undertake logic comprising: using a history of plural pastdistances between two objects and a predictable history of plural futuredistances between the objects, generating a model of the past distancesand future distances, the model generating coefficients or parametersrepresenting the distances; and outputting the coefficients orparameters, but not the distances from which they were derived, to athird object.
 7. The apparatus of claim 6, wherein the third object is areceiver of satellite position signals.
 8. The apparatus of claim 6,wherein the plural past distances are pseudoranges with respective pasttimes and establish an observation set of plural past pseudoranges, andthe predictable history of plural future distances establishes alookahead set of plural predicted future ranges and respective futuretimes.
 9. The apparatus of claim 8, wherein the model is produced by acurve fitting routine.
 10. The apparatus of claim 8, wherein a latesttime in the set of past pseudoranges is prior to an earliest time in theset of predicted future ranges such that the set of past pseudoranges istemporally separated from set of predicted future ranges by a separationperiod.
 11. The apparatus of claim 8, wherein pseudoranges in the pastrange/time pairs described by the model are measured pseudoranges, andthe instructions when executed by the processor cause the processor toundertake logic further comprising: outputting, with the coefficients orparameters, a set of residual values each representing a respectivedifference between a measured pseudorange at an associated time and anevaluated range at the associated time of the measured pseudorange, theevaluated range being a range output by evaluation of the mathematicalmodel.
 12. The apparatus of claim 9, wherein the curve fitting routineimplements a polynomial regression model that does not require a modelresponse to pass through range/time pairs.
 13. Method comprising:establishing a set of measured past relationships between first andsecond objects; establishing a set of estimated future relationshipsbetween the first and second objects; using the past and futurerelationships, deriving a numerical model describing the past and futurerelationships; and sending at least one output of the numerical model toa third object for application thereby to correct at least one value inthe third object.
 14. The method of claim 13, wherein establishing theset of measured past relationships between the first and second objectsincludes establishing an observation set of plural past pseudoranges andrespective past times between the first and second objects to establishpast range/time pairs.
 15. The method of claim 14, wherein establishinga set of estimated future relationships between the first and secondobjects includes establishing a lookahead set of plural predicted futureranges and respective future times between the first and second objects.16. The method of claim 15 wherein using the past and futurerelationships for deriving the numerical model is executed at least inpart by using a curve fitting routine to describe the past range/timepairs and future range/time pairs at least in part through coefficientsor parameters produced by the curve fitting routine, the coefficients orparameters establishing at least one output of the numerical model. 17.The method of claim 16, wherein a latest time in the set of pastpseudoranges is prior to an earliest time in the set of predicted futureranges such that the set of past pseudoranges is temporally separatedfrom set of predicted future ranges by a separation period.
 18. Themethod of claim 16, wherein ranges in the past range/time pairsdescribed by the curve fitting routine are measured ranges, and themethod further comprises: outputting, with the coefficients orparameters, a set of residual values each representing a respectivedifference between a measured range at an associated time and anevaluated range at the associated time of the measured range, theevaluated range being a range output by evaluation of the mathematicalmode.
 19. The method of claim 16, wherein the curve fitting routineimplements a polynomial regression model that does not require a modelresponse to pass through range/time pairs.
 20. The method of claim 19,wherein the method also outputs a derivative of a highest ordercoefficient of the model.
 21. A method by which a mathematical model isderived from a time history of past and present values of a distancebetween two objects combined with a time history of estimates of futurevalues of said distance between said two objects, the method comprising:a. recording a plurality of measurements of distances between said twoobjects and times at which said distances occur and storing saidmeasurements and measurement times in a memory device; b. creating aplurality of estimates of future distances between said two objects andtimes at which said estimates are expected to occur, and storing saidestimates and times in a memory device; and c. fitting a mathematicalmodel to said plurality of measurements of distances and said pluralityof estimates of future distances, together treated as a single compositetime history of distance between said two objects without regard forwhether individual distances are measured or estimated.
 22. The methodof claim 21, wherein: a. a first one of the two objects is designated asa transmitting device, and b. a second one of the two objects isdesignated as a receiving device, and c. the measurements of distancesbetween said transmitting device and said receiving device, and thetimes at which the measurements occur, are derived from one or moresignals transmitted from said transmitting device to said receivingdevice.
 23. The method of claim 22 in which the transmitting device alsofunctions as a receiving device, and in which the receiving device alsofunctions as a transmitting device, and in which at least two signalsare mutually exchanged, at least one from each of the transmittingdevice and the receiving device to the other.
 24. The method of claim 22in which: a. the transmitting device is a Global Navigation Satellite,and b. the receiving device is a Global Navigation Satellite Systemreceiver, and c. the signals are Global Navigation Satellite Systemmodulated radio frequency signals.
 25. The method of claim 22 in which:a. the receiving device is at a fixed and precisely-known location on ornear the surface of the earth, or b. the receiving device is stationaryat an unknown location, or c. the receiving device is mobile.
 26. Themethod of claim 22 in which: a. the transmitting device is a GlobalNavigation Satellite, and b. the receiving device is a Global NavigationSatellite System receiver, and c. the signals are Global NavigationSatellite System modulated radio frequency signals, and d. the estimatesof future distances between the two objects and times at which they areexpected to occur are derived from: i. ephemeris data associated withthe Global Navigation Satellite of (a), regularly broadcast by eachGlobal Navigation Satellite, or ii. precise orbital parametersassociated with the Global Navigation Satellite of (a), obtained fromalternate sources.
 27. The method of claim 22 in which either or both ofthe transmitting device and the receiving device is an orbitingsatellite, and a. the estimates of future distances between thetransmitting device and the receiving device, and times at which theyare expected to occur, are derived from the known nominal orbitalparameters of said satellite(s), or b. the estimates of future distancesbetween the transmitting device and the receiving device, and times atwhich they are expected to occur, are derived from similar orbitaltracks found in historical data and used in pattern-matching, or c. theestimates of future distances between the transmitting device and thereceiving device, and times at which they are expected to occur, arederived by repeating past data, suitably aligned with the known orbitalperiod(s).
 28. The method of claim 21 in which the estimates of futuredistances between the two objects and times at which they are expectedto occur are derived from: a. knowledge of the kinematics of one or bothof the objects, or b. knowledge of periodicities in the motion of one orboth of the objects, or c. knowledge of symmetries in the motion of oneor both of the objects, or d. knowledge of trends in the motion of oneor both of the objects, or e. knowledge of constraints upon the motionor position of one or both of the objects, or in which the estimates offuture distances between the two objects are assigned constant values atany times because both objects are known to be at fixed locations. 29.The method of claim 21 in which: a. a subset of contiguous distance andtime measurements, designated a “window” of measurements and measurementtimes, is utilized in step (c), and/or b. a subset of contiguousdistance and time estimates, designated a “window” of estimates andexpected times, is utilized in step (c).
 30. The method of claim 29 inwhich the windows “slide” over the measurements and/or estimates, one ata time, such that as time advances and newer measurements or estimatesare incorporated, nominally the same number of measurements and/orestimates are spanned by the windows.
 31. The method of claim 29 inwhich the windows “hop” over the measurements and/or estimates, severalat a time, such that as time advances and newer measurements orestimates are incorporated, nominally the same number of measurementsand/or estimates are spanned by the windows.
 32. The method of claim 21in which a temporal gap exists between a latest measured time and anearliest future expected time for the distances between the objects. 33.The method of claim 21 in which the model is configured as, or ismathematically equivalent to, a polynomial or ratio of polynomials, or aspline, or Fourier coefficients, or spherical harmonic coefficients, ora parametric mathematical model.
 34. The method of claim 21 in which themodel is derived by a least squares fit, or trigonometric methods, orFourier analysis, or minimax methods, or spherical harmonic analysis, orlinear predictor, or a mathematical method that unambiguously determinesone or more parameters of the mathematical model.
 35. The method ofclaim 21 in which the model is subsequently evaluated in order toestimate distance values at: a. times at which distance measurements ofstep (a) exist, but the distance measurements are corrupted by errors,wherein the model is used to reduce said errors, said reduction oferrors being improved by the inclusion of the estimates of futuredistances of step (b) in the formulation of the model, or b. arbitrarytimes in-between distance measurements of step (a), wherein the model isused to interpolate between the measurements, said interpolation beingimproved by the inclusion of the estimates of future distances of step(b) in the formulation of the model, or c. times at which distanceestimates of step (b) exist, but accuracy of the distance estimates issuspect, wherein the model is used to improve accuracy of the estimates,or d. arbitrary times in-between distance estimates of step (b), whereinthe model is used to interpolate between the estimates, or e. arbitrarytimes within a gap between the distance measurements of step (a) and thedistance estimates of step (b), wherein the model is used to extrapolatethe distance measurements forward in time, said extrapolation beingimproved by the inclusion of the estimates of future distances of step(b) in the formulation of the model.
 36. A method by which datacompression may be achieved, the method comprising: a. recording aplurality of measurements of a quantity and times at which saidmeasurements occur and storing said measurements and measurement timesin a memory device; b. creating a plurality of estimates of futurevalues of said quantity and times at which said estimates are expectedto occur and storing said estimates and times in a memory device; and c.fitting a mathematical model to said measurements from (a) and saidestimates from (b), together treated as a single composite time historyof said quantity without regard for whether individual quantity valuesare measured or estimated; and further comprising: d. in at least onesituation requiring only an approximation of said measured data from(a), storing, transmitting, or otherwise utilizing coefficients orparameters of said mathematical model from (c) instead of said measureddata from (a), such that a representation of said measured data from (a)may be derived by means of an evaluation of said mathematical model from(c) at the associated measurement times from (a), said representationbeing improved by the inclusion of the estimates of future values from(b) in the formulation of the model, or e. in at least one situationrequiring an interpolation or an extrapolation of said measured datafrom (a), storing, transmitting, or otherwise utilizing coefficients orparameters of said mathematical model from (c) such that arepresentation of said measured data from (a) may be derived by means ofan evaluation of said mathematical model from (c) at arbitrarymeasurement times, said representation being improved by the inclusionof the estimates of future values from (b) in the formulation of themodel, or f. in at least one situation requiring an exact representationof at least one measurement at at least one associated measurement time:i. deriving a mathematical model from (c) relative to any appropriatetime in the past or present, and ii. utilizing said mathematical modelfrom (i) to form residual values, each residual value representing adifference between a measured value and a result of an evaluation ofsaid mathematical model from (i) at associated measurement time, andiii. storing, transmitting, or otherwise utilizing coefficients orparameters of said mathematical model from (i), updated at anappropriate rate, and iv. storing, transmitting, or otherwise utilizingeach residual value from (ii) at an appropriate rate such that a resultof an evaluation of the mathematical model represented by saidcoefficients or parameters from (iii) at a measurement time, added tosaid residual value, forms a lossless representation of associatedmeasurement.
 37. The method of claim 36 in which a temporal gap existsbetween the latest measured time and the earliest future expected time.38. The method of claim 36 in which the model is configured as, or ismathematically equivalent to, a polynomial or ratio of polynomials, or aspline, or Fourier coefficients, or spherical harmonic coefficients, ora parametric mathematical model.
 39. The method of claim 36 in which themodel is derived by least squares, or trigonometric methods, or Fourieranalysis, or minimax methods, or spherical harmonic analysis, or linearpredictor, or a mathematical method that unambiguously determinescoefficients or parameters of the mathematical model.
 40. The method ofclaim 36 in which the model is evaluated in order to estimate quantityvalues at: a. times at which measurements of step (a) exist, but themeasurements are corrupted by errors, wherein the model is used toreduce said errors, said reduction of errors being improved by theinclusion of the estimates of future values from step (b) in theformulation of the model, or b. arbitrary times in-between measurementsof step (a), wherein the model is used to interpolate between themeasurements, said interpolation being improved by the inclusion of theestimates of future values from step (b) in the formulation of themodel, or c. times at which estimates of step (b) exist, but accuracy ofthe estimates is suspect, wherein the model is used to improve accuracyof the estimates, or d. arbitrary times in-between estimates of step(b), wherein the model is used to interpolate between the estimates, ore. arbitrary times within a gap between the measurements of step (a) andthe estimates of step (b), wherein the model is used to extrapolate themeasurements forward in time, said extrapolation being improved by theinclusion of the estimates of future values from step (b) in theformulation of the model, or f. a subset of times at which measurementsof step (a) exist, or at arbitrary times in-between, wherein the modelis used to form a representation of a decimation of the measurements,said representation being improved by the inclusion of the estimates offuture values from step (b) in the formulation of the model.
 41. Themethod of claim 40 in which, in step (f), the interval between updatesof the mathematical model is longer than the interval between updates ofthe residual values, such that a reduction in computational load isachieved.
 42. A method by which derivatives of a time history of aquantity may be estimated and extrapolated, the method comprising: a.recording a plurality of measurements of a quantity and times at whichsaid measurements occur and storing said measurements and measurementtimes in a memory device; b. creating a plurality of estimates of futurevalues of said quantity and times at which they are expected to occurand storing said estimates and times in a memory device; and c. fittinga mathematical model to said measurements and said estimates, togethertreated as a single composite time history of said quantity withoutregard for whether individual quantity values are measured or estimated.43. The method of claim 42 in which a temporal gap exists between thelatest measured time and the earliest future expected time.
 44. Themethod of claim 42 in which the model is derived by least squares, ortrigonometric methods, or Fourier analysis, or minimax methods, orspherical harmonic analysis, or linear predictor, or a mathematicalmethod that unambiguously determines at least some coefficients and/orparameters of the mathematical model.
 45. The method of claim 42 inwhich derivatives of the quantity with respect to time are estimated byrepeatedly differentiating the model polynomial of step (c) with respectto time, up to any desired order of said derivatives, and evaluatingsaid multiply differentiated polynomial at specific times of interest ator between measurement times of step (a) or at future times relative toa latest measurement time of step (a), said estimates of derivativesbeing improved by the inclusion of the estimates of future values fromstep (b) in the formulation of the model.
 46. A method by which a datamodel may be constructed such that said model can predict futureconfigurations of itself, the method comprising: a. recording aplurality of measurements of a quantity and times at which saidmeasurements occur and storing said measurements and measurement timesin a memory device, and b. creating a plurality of estimates of futurevalues of said quantity and times at which said estimates are expectedto occur and storing said estimates and times in a memory device, and c.fitting a mathematical model to said measurements from (a) and saidestimates from (b), together treated as a single composite time historyof said quantity without regard for whether individual quantity valuesare measured or estimated, and d. configuring said model as a StateModel, in which at least one combination of coefficients and/orparameters of said model is a representation of a slope of anothercoefficient or parameter of said model at a specific time of interest,and thus a set of all coefficients or parameters is a representation ofa state of said model.
 47. The method of claim 46 in which a temporalgap exists between a latest measured time and an earliest futureexpected time for the quantity.
 48. The method of claim 46 in which themodel is derived by least squares, or trigonometric methods, or Fourieranalysis, or minimax methods, or spherical harmonic analysis, or linearpredictor, or a mathematical method that unambiguously determines thecoefficients or parameters of the mathematical model.
 49. The method ofclaim 46 in which the state of the model at a current time can be usedto estimate the state of the model at a future time by integrating a setof State Equations, said estimates of future state being improved by theinclusion of the estimates of future values from step (b) in theformulation of the model.
 50. The method of claim 49 in whichintegration of State Equations incorporates estimates of slopes ofcoefficients or parameters of the model at the current time.
 51. Themethod of claim 50 in which the estimate of a current slope of acoefficient or parameter is determined by evaluation of past values ofthe that coefficient or parameter, by means of trend line analysis ormathematical modeling.
 52. The method of claim 50 in which datacompression is achieved by storing, transmitting, or otherwise utilizingestimates of the slopes of model coefficients or parameters, andincorporating said slope estimates in subsequent integration of theState Equations to update the entire set of model coefficients orparameters, instead of storing, transmitting, or otherwise utilizing theentire set of model coefficients or parameters.
 53. The apparatus ofclaim 3, wherein the measured range and associated time are derived fromthe same source as the mathematical model.
 54. The apparatus of claim 3,wherein the measured range and associated time are not derived from thesame source as the mathematical model.
 55. The apparatus of claim 11,wherein the measured pseudorange and associated time are derived fromthe same source as the mathematical model.
 56. The apparatus of claim11, wherein the measured pseudorange and associated time are not derivedfrom the same source as the mathematical model.
 57. The method of claim18, wherein the measured pseudorange and associated time are derivedfrom the same source as the mathematical model.
 58. The method of claim18, wherein the measured pseudorange and associated time are not derivedfrom the same source as the mathematical model.